package com.net.xpay.common.manager.notify;

import com.net.xpay.common.domain.notify.SafePayBatchNotifyRecord;
import com.net.xpay.common.model.search.SafePayBatchNotifyRecordSearchModel;
import com.net.common.manager.DomainManager;

import java.time.LocalDateTime;
import java.util.List;


public interface SafePayBatchNotifyRecordManager extends DomainManager<Long, SafePayBatchNotifyRecord> {
    List<SafePayBatchNotifyRecord> search(SafePayBatchNotifyRecordSearchModel searchModel);

    long searchCount(SafePayBatchNotifyRecordSearchModel searchModel);

    /**
     * 删除指定日期之前的数据
     */
    int deleteFinishedRecord(LocalDateTime deadline);

    /**
     * 查询待推送的记录
     */
    List<Long> queryWaitNotifyRecord(long limit, LocalDateTime maxNextNotifyTime);

    SafePayBatchNotifyRecord getBySafePayBatchId(Long safePayBatchId);
}
